package com.sh.business.domain;

import com.baomidou.mybatisplus.extension.handlers.FastjsonTypeHandler;
import com.baomidou.mybatisplus.extension.handlers.JacksonTypeHandler;
import com.sh.business.domain.dto.Bonus;
import com.sh.business.domain.dto.Ordinary;
import com.sh.business.domain.dto.Special;
import com.sh.common.mybatis.core.domain.BaseEntity;
import com.baomidou.mybatisplus.annotation.*;
import lombok.Data;
import lombok.EqualsAndHashCode;

import java.io.Serial;

/**
 * 奖励配置对象 bms_config
 *
 * @author ruoyi
 * @date 2024-10-09
 */
@Data
@EqualsAndHashCode(callSuper = true)
@TableName(value = "bms_config", autoResultMap = true)
public class Config extends BaseEntity {

    @Serial
    private static final long serialVersionUID = 1L;

    /**
     * 主键
     */
    @TableId(value = "id")
    private Long id;

    /**
     * 普通奖励配置
     */
    @TableField(typeHandler = JacksonTypeHandler.class)
    private Ordinary ordinary;

    /**
     * 特殊奖励配置
     */
    @TableField(typeHandler = JacksonTypeHandler.class)
    private Special special;

    /**
     * 分红奖励配置
     */
    @TableField(typeHandler = JacksonTypeHandler.class)
    private Bonus bonus;

    /**
     * 版本
     */
    @Version
    private Long version;

    /**
     * 删除标志（0代表存在 2代表删除）
     */
    @TableLogic
    private String delFlag;


}
